文档
注册

USB摄像头视频拉流

  1. 将USB摄像头插入Atlas 200I DK A2 开发者套件的USB接口。
  2. 使用摄像头逐帧采集,并将推理结果写入结果视频中。
    示例代码如下。
    import cv2
    
    cap = cv2.VideoCapture(0)
    
    # 获取保存视频相关变量
    fps = cap.get(cv2.CAP_PROP_FPS)  # 获取帧数
    fourcc = cv2.VideoWriter_fourcc(*'mp4v')  # 设置视频编码类型
    outfile = 'video_result.mp4'  # 设置结果保存文件
    video_width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))  # 获取原视频的高度
    video_height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))  # 获取原视频的宽度
    writer = cv2.VideoWriter(outfile, fourcc, fps, (video_width, video_height))  # 获取视频写入writer
    
    try:
        while(cap.isOpened()):  # 在摄像头打开的情况下循环执行
            ret, frame = cap.read()  # 此处 frame 为 bgr 格式图片
    
            # ========================================
            # 这里放入模型前处理、推理、后处理相关代码,根据实际情况修改
            img = preprocess(frame)  # 前处理
            infer_res = infer(img)  # 推理
            img_res = postprocess(infer_res)  # 后处理
            # ========================================
    
            # 将推理结果写入视频
            writer.write(img_res)  
    except KeyboardInterrupt:
        cap.release()  # 释放摄像头资源
        writer.release()  # 释放视频写入资源
    finally:
        cap.release()
        writer.release()

    此代码为样例代码,用户需自行修改模型的前处理、推理、后处理部分。

搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词